package com.zhonghui.common.eshopEnum;

import java.util.stream.Stream;

public enum OrderLogEnum {
    PINK_ORDER_FAIL_1("ORDER_EXIST", "订单生成失败，你已经参加该团了，请先支付订单"),
    PINK_ORDER_FAIL_2("ORDER_EXIST", "订单生成失败，你已经在该团内不能再参加了"),
    REFUND_ORDER_SUCCESS("refund_price_success", "退款成功"),
    ORDER_EDIT("order_edit", "订单改价"),
    REMOVE_ORDER("remove_order", "删除订单"),
    EVAL_ORDER("order_eval", "用户评价"),
    REFUND_ORDER_APPLY("apply_refund", "用户申请退款"),
    TAKE_ORDER_DELIVERY("user_take_delivery", "用户已收货"),
    PAY_ORDER_FAIL("PAY_DEFICIENCY", "余额不足"),
    PAY_ORDER_SUCCESS("pay_success", "用户付款成功"),
    CREATE_ORDER_SUCCESS("SUCCESS", "订单创建成功"),
    CREATE_ORDER("yshop_create_order", "订单生成"),
    NONE_ORDER("NONE", "订单OK"),
    DELIVERY_GOODS("delivery_goods", "订单发货"),
    EXTEND_ORDER("EXTEND_ORDER", "订单已生成");

    private String value;
    private String desc;

    public static OrderLogEnum toType(String value) {
        return (OrderLogEnum) Stream.of(values()).filter((p) -> {
            return p.value.equals(value);
        }).findAny().orElse( (OrderLogEnum) null );
    }

    public static String getDesc(String value) {
        return toType(value) == null ? null : toType(value).desc;
    }

    public String getValue() {
        return this.value;
    }

    public String getDesc() {
        return this.desc;
    }

    private OrderLogEnum(final String value, final String desc) {
        this.value = value;
        this.desc = desc;
    }
}
